A “computer process” is a computer activity defined by executing a computer program. A computer program is a physical encoding in non-transitory computer-readable storage media of computer-readable data including computer-executable instructions. A computer program can be executed using computer hardware, e.g., a computer processor.
“Computer process” encompasses both foreground and background processes. A foreground process is a process of which a user is normally aware, e.g., because it presents a user with a perceived (e.g., graphical or text-based) user interface for user inputs and/or outputs. Background processes operate without a perceived user interface, e.g., because there is no user interface or because a provided user interface is employed only rarely, e.g., for configuration purposes. Browsers typically provide for foreground processes that allow a user to interact with web sites. Examples of background processes include processes that monitor the activity and usage of programs and devices. For example, a background process may be used to monitor use of a webcam that is part of or is connected to a computer on which the background process is executing.